package com.cwx.mychat.scheduler;

import com.cwx.mychat.mappers.ChatMessageMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;

/**
 * 作者： cwx
 * 时间： 2025/2/21 11:50
 * 版本： 1.0
 * 注释：
 */
@Slf4j
@Component
public class MysqlScheduling {


    @Autowired
    private ChatMessageMapper chatMessageMapper;


    /**
     * 清理mysql的chatMessage信息
     * 每个月的1号和16号执行一次
     */
    @Scheduled(cron = "0 0 0 * * ?")
    public void cleanUpData(){
        //计算今天的日期
        log.info("开始清理mysql的chatMessage信息");
        LocalDateTime now = LocalDateTime.now();
        //计算前30天的日期
        LocalDateTime before30Days = now.minusDays(30);
        chatMessageMapper.cleanUpData(before30Days);
    }

}
